From fc1fcbf71319aea2414647f84738f08034ad8284 Mon Sep 17 00:00:00 2001 From: Fuwn Date: Sun, 14 Apr 2024 13:32:26 -0700 Subject: feat(badges): hide category button --- src/routes/user/[user]/badges/+page.svelte | 64 +++++++++++++++++++++++++++++- 1 file changed, 62 insertions(+), 2 deletions(-) (limited to 'src/routes/user/[user]') diff --git a/src/routes/user/[user]/badges/+page.svelte b/src/routes/user/[user]/badges/+page.svelte index 0490dc97..48a10a0c 100644 --- a/src/routes/user/[user]/badges/+page.svelte +++ b/src/routes/user/[user]/badges/+page.svelte @@ -53,6 +53,7 @@ let importReplies = false; let badger: Partial; let migrateMode = false; + let hideMode = false; let preferences: UserPreferences; $: categoryFilter = new URLSearchParams($page.url.searchParams).get('category'); @@ -429,6 +430,19 @@ migrateMode = false; }; + const hideCategory = () => { + badgesPromise = fetch( + `/api/badges?hide=true&category=${encodeURIComponent( + (document.querySelector('#category_hide') as HTMLInputElement).value + )}`, + { + method: 'PUT' + } + ); + + hideMode = false; + }; + // const exportBadges = (groupedBadges: [string, Badge[]][]) => { // const url = URL.createObjectURL( // new Blob([JSON.stringify(groupedBadges)], { type: 'application/json' }) @@ -560,8 +574,18 @@ > Migrate Category - + + + + {#if editMode && isOwner} {@const groups = groupedBadges @@ -908,6 +932,42 @@ + (hideMode = false)} show={hideMode}> + Hide Category + + + If the majority of the badges in a category are shown, the category will be hidden, and vice + versa. + + +

+ + + Leave category field empty to hide all. + +

+ + + + +